package com.itheima.day11.第三题;

import java.io.File;

/*
* File类，提供了delete()方法，可以删除文件或者文件夹。
* 但删除文件夹时，必须保证文件夹为空才会删除成功。请利用递归编程，定义删除文件夹的方法。
* 比如给定非空目录：D:\\FileTest，可以将这个目录删除。

【警告：java程序删除文件时，不会将文件放入回收站，慎重操作！！！】
* */
public class Demo3 {
    public static void main(String[] args) {
        File file = new File("D:\\FileTest");
        delectFile(file);
    }

    private static void delectFile(File file) {
        if (!file.exists()){
            System.out.println("目标路径不存在,无法删除");
            return;
        }
        if (file.isFile()) {    //是文件就直接删除
            file.delete();
            System.out.println(file + "删除成功");
        }else { //是文件夹
            if (file.delete()) {
                System.out.println(file + "删除成功");
            }else{
                File[] files = file.listFiles();
                for (File file1 : files) {
                    delectFile(file1);
                }
            }
            file.delete();
        }
    }
}
